package com.wind;

import java.util.ArrayList;
import java.util.List;

public abstract class WindConstraint {

	public abstract String getCode();

	public boolean isForInsert() {
		return true;
	}

	public boolean isForUpdate() {
		return true;
	}

	public boolean isForDelete() {
		return true;
	}

	public List<WindConstraintViolation> checkForInsert(WindEntity entity) {
		List<WindConstraintViolation> violations = new ArrayList<WindConstraintViolation>();
		
		return violations;
	}
	
	public List<WindConstraintViolation> checkForInsert(WindEntity entity, WindTypeAttribute attribute) {
		List<WindConstraintViolation> violations = new ArrayList<WindConstraintViolation>();
		
		return violations;
	}
	
	public List<WindConstraintViolation> checkForUpdate(WindEntity entity) {
		List<WindConstraintViolation> violations = new ArrayList<WindConstraintViolation>();
		
		return violations;
	}
	
	public List<WindConstraintViolation> checkForUpdate(WindEntity entity, WindTypeAttribute attribute) {
		List<WindConstraintViolation> violations = new ArrayList<WindConstraintViolation>();
		
		return violations;
	}
	
	public List<WindConstraintViolation> checkForDelete(WindEntity entity) {
		List<WindConstraintViolation> violations = new ArrayList<WindConstraintViolation>();
		
		return violations;
	}
	
	public List<WindConstraintViolation> checkForDelete(WindEntity entity, WindTypeAttribute attribute) {
		List<WindConstraintViolation> violations = new ArrayList<WindConstraintViolation>();
		
		return violations;
	}
	
}
